//
//  AY_ThinkTableView.m
//  AiYue
//
//  Created by mac on 2023/11/9.
//

#import "AY_ThinkTableView.h"
#import "AY_ThinkCell.h"

@interface AY_ThinkTableView ()<UITableViewDataSource,UITableViewDelegate>

/**
 UITableView 基类
 */
@property (nonatomic,strong) UITableView *tableView;
@property (nonatomic,strong) NSMutableArray *thinks;
@property (nonatomic,strong) NSString *thinkKey;

@end

@implementation AY_ThinkTableView

- (instancetype)initWithFrame:(CGRect)frame {
    self = [super initWithFrame:frame];
    if (self) {
        [self addSubview:self.tableView];
    }
    return self;
}

- (void)sendThinks:(NSMutableArray *)thinks andThinkKey:(NSString *)thinkKey {
    self.thinks = [NSMutableArray arrayWithArray:thinks];
    self.thinkKey = thinkKey;
    [self.tableView reloadData];
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return self.thinks.count;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    
    static NSString *ID = @"AY_ThinkCell";
    AY_ThinkCell *cell = [tableView dequeueReusableCellWithIdentifier:ID];
    if (cell == nil) {
        cell = [[AY_ThinkCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:ID];
    }
    cell.selectionStyle = UITableViewCellSelectionStyleNone;
    [cell sendTitle:self.thinks[indexPath.row] andThinkKey:self.thinkKey];
    return cell;
}

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
    return YNUM(40);
}

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    if ([self.delegate respondsToSelector:@selector(didSelectRowAtString:)]) {
        [self.delegate didSelectRowAtString:self.thinks[indexPath.row]];
    }
}

- (void)dismiss {
    [self.thinks removeAllObjects];
    [self.tableView reloadData];
    [self removeFromSuperview];
}

- (void)loadingInView:(UIView *)view {
    [view addSubview:self];
}

- (UITableView *)tableView{
    
    if (!_tableView) {
        
        UITableView *tableView = [[UITableView alloc]initWithFrame:self.bounds style:UITableViewStylePlain];
        tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
        tableView.showsVerticalScrollIndicator = NO;
        tableView.dataSource = self;
        tableView.translatesAutoresizingMaskIntoConstraints = NO;
        tableView.backgroundColor = [UIColor whiteColor];
        tableView.delegate = self;
        tableView.tableFooterView = [[UIView alloc] init];
        _tableView = tableView;
    }
    return _tableView;
}
@end
